#ifndef TRANSFORM_GEOBOX_H
#define TRANSFORM_GEOBOX_H
#include "GeoPlane.h"

class GeoBox : public Geometry
{
public:
	GeoBox(float mWidth = 1, float mHeight = 1, float mDepth = 1, int mWSegment = 1, int mHSegment = 1, int mDSegment = 1);

private:
	void makeData();
	/**
	 * @brief 生成得到xyz某一个平面的数据
	 *
	 * @param u v w
	 * uvw三分量对应
	 * vec3(u, v, w)
	 * x y z | 0, 1, 2
	 * z y x | 2, 1, 0
	 * x z y | 0, 2, 1
	 */
	void makePlane(Vertices &vertices, Indices &indices, int u, int v, int w, int dir, float width, float height, float depth, int wSegment, int hSegment);
	float m_depth;
	int m_dSegment;
	float m_width;
	float m_height;
	int m_wSegment;
	int m_hSegment;
};

#endif // TRANSFORM_GEOBOX_H
